" Maintainer:   Artem Chuprina <ran@ran.pp.ru>
" Last Change:  2012 Apr 30

if exists("current_compiler")  | finish  | en

let s:keepcpo= &cpo  | set cpo&vim


if exists('b:tex_ignore_makefile')
\|| exists('g:tex_ignore_makefile')
\|| ( !filereadable('Makefile') &&  !filereadable('makefile') )
    " If buffer-local variable 'tex_flavor' exists,
        " it defines TeX flavor,
    " otherwise the same for global variable with same name,
    " else it will be  LaTeX
    if exists("b:tex_flavor")
        let current_compiler = b:tex_flavor
    elseif exists("g:tex_flavor")
        let current_compiler = g:tex_flavor
    el
        let current_compiler = "latex"
    en
    let &l:makeprg=current_compiler . ' -interaction=nonstopmode'
el
    " If makefile exists and
    " we are not asked to ignore it,
    " we use standard make
    " (do not redefine makeprg)
    let current_compiler = 'make'
en

" Value errorformat are taken from vim help,
" see :help errorformat-LaTeX,
" with  addition from Srinath Avadhanula <srinath@fastmail.fm>
CompilerSet errorformat=%E!\ LaTeX\ %trror:\ %m,
    \%E!\ %m,
    \%+WLaTeX\ %.%#Warning:\ %.%#line\ %l%.%#,
    \%+W%.%#\ at\ lines\ %l--%*\\d,
    \%WLaTeX\ %.%#Warning:\ %m,
    \%Cl.%l\ %m,
    \%+C\ \ %m.,
    \%+C%.%#-%.%#,
    \%+C%.%#[]%.%#,
    \%+C[]%.%#,
    \%+C%.%#%[{}\\]%.%#,
    \%+C<%.%#>%.%#,
    \%C\ \ %m,
    \%-GSee\ the\ LaTeX%m,
    \%-GType\ \ H\ <return>%m,
    \%-G\ ...%.%#,
    \%-G%.%#\ (C)\ %.%#,
    \%-G(see\ the\ transcript%.%#),
    \%-G\\s%#,
    \%+O(%*[^()])%r,
    \%+O%*[^()](%*[^()])%r,
    \%+P(%f%r,
    \%+P\ %\\=(%f%r,
    \%+P%*[^()](%f%r,
    \%+P[%\\d%[^()]%#(%f%r,
    \%+Q)%r,
    \%+Q%*[^()])%r,
    \%+Q[%\\d%*[^()])%r

let &cpo = s:keepcpo  | unlet s:keepcpo

"\ echom '来啦, /home/wf/dotF/cfg/nvim/compiler/tex.vimtex.vim'
"\ 打开nvim或者ReloaD时, 不会跑到这里
